Live migration of virtual machines using virtual bridges in a multi-root input-output virtualization blade chassis

ABSTRACT

A method for managing migration of a virtual machine includes accessing a first information handling system and a second information handling system, accessing a network information handling resource, using one or more switches to virtualize access of the network information handling resource to the first information handling system and the second information handling system, accessing a virtual bridge associated with the network information handling resource, accessing a virtual machine configured to access the resources of the first information handling system, and copying the operational state of the virtual machine from the first information handling system to the second information handling system using the first virtual bridge. The first information handling system and the second information handling system share the network information handling resource using the virtualized access.

TECHNICAL FIELD

The present disclosure relates in general to information handlingsystems, and more particularly to live migration of virtual machinesusing virtual bridges in a multi-root input-output virtualization bladechassis.

BACKGROUND

As the value and use of information continues to increase, individualsand businesses seek additional ways to process and store information.One option available to users is information handling systems. Aninformation handling system generally processes, compiles, stores,and/or communicates information or data for business, personal, or otherpurposes thereby allowing users to take advantage of the value of theinformation. Because technology and information handling needs andrequirements vary between different users or applications, informationhandling systems may also vary regarding what information is handled,how the information is handled, how much information is processed,stored, or communicated, and how quickly and efficiently the informationmay be processed, stored, or communicated. The variations in informationhandling systems allow for information handling systems to be general orconfigured for a specific user or specific use such as financialtransaction processing, airline reservations, enterprise data storage,or global communications. In addition, information handling systems mayinclude a variety of hardware and software components that may beconfigured to process, store, and communicate information and mayinclude one or more computer systems, data storage systems, andnetworking systems.

Existing server architectures either provide a single monolithic servercapable of running one operating system and input/output (“I/O”)resources at a time, or bulky blade server chassis providing multipleservers and I/O control modules in a single chassis. A system chassiswith multiple information handling systems with various peripheral andinput/output capabilities common to the chassis as a whole may provideadvantages, as it allows a blade server chassis in a small form factor,thereby providing a blade server chassis with a size comparable to thesize of a monolithic server. Implementation of a system chassis withmultiple information handling systems with various peripheral andinput/output capabilities common to the chassis as a whole presentsnumerous challenges.

SUMMARY

In accordance with the teachings of the present disclosure, thedisadvantages and problems associated with removal of informationhandling resources in a shared input/output infrastructure have beenreduced or eliminated.

In accordance with some embodiments of the present disclosure, a systemincludes a chassis, one or more switches, a virtual bridge, a virtualmachine, and a virtualization environment. The chassis is configured toreceive a first information handling system, a second informationhandling system, and a plurality of information handling resourcesincluding a network information handling resource. Each informationhandling resource is received through a slot in the chassis. Theswitches are configured to virtualize access of the network informationhandling resource to the first information handling system and thesecond information handling system, wherein the first informationhandling system and the second information handling system share thenetwork information handling resource using the virtualized access. Thevirtual bridge is associated with the network information handlingresource. The virtual machine is configured to access the resources ofthe first information handling system. The virtualization environment isconfigured to migrate the virtual machine from the first informationhandling system to the second information handling system using thevirtual bridge.

In other embodiments, a method for managing migration of a virtualmachine includes accessing a first information handling system and asecond information handling system, accessing a network informationhandling resource, using one or more switches to virtualize access ofthe network information handling resource to the first informationhandling system and the second information handling system, accessing avirtual bridge associated with the network information handlingresource, accessing a virtual machine configured to access the resourcesof the first information handling system, and copying the operationalstate of the virtual machine from the first information handling systemto the second information handling system using the first virtualbridge. The first information handling system and the second informationhandling system share the network information handling resource usingthe virtualized access.

In yet other embodiments, an article of manufacture includes a computerreadable medium and computer-executable instructions carried on thecomputer readable medium. The instructions are readable by a processor.The instructions, when read and executed, cause the processor to accessa first information handling system and a second information handlingsystem, access a network information handling resource, use one or moreswitches to virtualize access of the network information handlingresource to the first information handling system and the secondinformation handling system, access a virtual bridge associated with thenetwork information handling resource, access a virtual machineconfigured to access the resources of the first information handlingsystem, and copy the operational state of the virtual machine from thefirst information handling system to the second information handlingsystem using the virtual bridge. The first information handling systemand the second information handling system share the network informationhandling resource using the virtualized access.

Technical advantages of the present disclosure will be apparent to thoseof ordinary skill in the art in view of the following specification,claims, and drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

A more complete understanding of the present embodiments and advantagesthereof may be acquired by referring to the following description takenin conjunction with the accompanying drawings, in which like referencenumbers indicate like features, and wherein:

FIG. 1 illustrates a block diagram of an example system chassis withmultiple information handling systems and with various peripheral andinput/output capabilities common to the chassis as a whole, inaccordance with certain embodiments of the present disclosure;

FIG. 2 illustrates a more detailed block diagram of example systemconfigured to conduct live migration of virtual machines in a modularchassis for information handling systems in accordance with certainembodiments of the present disclosure;

FIG. 3 illustrates a more detailed block diagram of mechanisms toconnect a single-root input-output-virtualization network interface cardto simulate local-area-network activity in accordance with certainembodiments of the present disclosure;

FIG. 4 illustrates a more detailed block diagram of virtual hierarchiesprovided by a chassis that may be used to provided live migration ofvirtual machines in accordance with certain embodiments of the presentdisclosure;

FIG. 5 illustrates a block diagram of example virtual machine operationin accordance with certain embodiments of the present disclosure;

FIG. 6 illustrates a block diagram of example live migration inaccordance with certain embodiments of the present disclosure;

FIG. 7 illustrates a block diagram of a more detailed example of theoperation of live migration in accordance with certain embodiments ofthe present disclosure; and

FIG. 8 illustrates a flow chart of an example method for live migrationof virtual machines using virtual bridges in a multi-root input-outputvirtualization blade chassis.

DETAILED DESCRIPTION

Preferred embodiments and their advantages are best understood byreference to FIGS. 1-6, wherein like numbers are used to indicate likeand corresponding parts.

For the purposes of this disclosure, an information handling system mayinclude any instrumentality or aggregate of instrumentalities operableto compute, classify, process, transmit, receive, retrieve, originate,switch, store, display, manifest, detect, record, reproduce, handle, orutilize any form of information, intelligence, or data for business,scientific, control, entertainment, or other purposes. For example, aninformation handling system may be a personal computer, a PDA, aconsumer electronic device, a network storage device, or any othersuitable device and may vary in size, shape, performance, functionality,and price. The information handling system may include memory, one ormore processing resources such as a central processing unit (“CPU”) orhardware or software control logic. Additional components or theinformation handling system may include one or more storage devices, oneor more communications ports for communicating with external devices aswell as various input and output (“I/O”) devices, such as a keyboard, amouse, and a video display. The information handling system may alsoinclude one or more buses operable to transmit communication between thevarious hardware components.

For the purposes of this disclosure, information handling resources maybroadly refer to any component system, device or apparatus of aninformation handling system, including without limitation processors,busses, memories, input-output devices and/or interfaces, storageresources, network interfaces, motherboards, electro-mechanical devices(e.g., fans), displays, and power supplies.

For the purposes of this disclosure, computer-readable media may includeany instrumentality or aggregation of instrumentalities that may retaindata and/or instructions for a period of time. Computer-readable mediamay include, without limitation, storage media such as a direct accessstorage device (e.g., a hard disk drive or floppy disk), a sequentialaccess storage device (e.g., a tape disk drive), compact disk, CD-ROM,DVD, random access memory (“RAM”), read-only memory (“ROM”),electrically erasable programmable read-only memory (“EEPROM”), and/orflash memory; as well as communications media such wires, opticalfibers, microwaves, radio waves, and other electromagnetic and/oroptical carriers; and/or any combination of the foregoing.

Information handling systems often use an array of physical storageresources (e.g., disk drives), such as a Redundant Array of IndependentDisks (“RAID”), for example, for storing information. Arrays of physicalstorage resources typically utilize multiple disks to perform input andoutput operations and can be structured to provide redundancy which mayincrease fault tolerance. Other advantages of arrays of physical storageresources may be increased data integrity, throughput and/or capacity.In operation, one or more physical storage resources disposed in anarray of physical storage resources may appear to an operating system asa single logical storage unit or “logical unit.” Implementations ofphysical storage resource arrays can range from a few physical storageresources disposed in a chassis, to hundreds of physical storageresources disposed in one or more separate storage enclosures.

FIG. 1 illustrates a block diagram of an example system 100 having achassis 101 with multiple information handling systems 102 and withvarious peripheral and input/output capabilities common to chassis 101as a whole, in accordance with certain embodiments of the presentdisclosure. System 100 may be configured to provide live migration ofvirtual machines using virtual bridges between information handlingsystems 102. As depicted in FIG. 1, system 100 may comprise a chassis101 including a plurality of information handling systems 102, amid-plane 106, one or more switches 110, one or more chassis managementcontrollers 112, a network interface 116, one or more slots 120, one ormore cables 124, one or more storage interfaces 126, a disk drivebackplane 128, a plurality of disk drives 130, an optical media drive132, a keyboard-video-mouse (“KVM”) interface 134, and a user interface136.

An information handling system 102 may generally be operable to receivedata from and/or communicate data to one or more disk drives 130 and/orother information handling resources of chassis 101 via mid-plane 106.In certain embodiments, an information handling system 102 may be aserver. In such embodiments, an information handling system may comprisea blade server having modular physical design.

In these and other embodiments, an information handling system 102 maycomprise an M class server. As depicted in FIG. 1, an informationhandling system 102 may include a processor 103 and one or more switchinterfaces 104 communicatively coupled to processor 103.

A processor 103 may include any system, device, or apparatus configuredto interpret and/or execute program instructions and/or process data,and may include, without limitation a microprocessor, microcontroller,digital signal processor (“DSP”), application specific integratedcircuit (“ASIC”), or any other digital or analog circuitry configured tointerpret and/or execute program instructions and/or process data. Insome embodiments, processor 103 may interpret and/or execute programinstructions and/or process data stored in a memory, a hard drive 130,and/or another component of system 100.

A switch interface 104 may comprise any system, device, or apparatusconfigured to provide an interface between its associated informationhandling system 102 and switches 110. In some embodiments, switches 110may comprise Peripheral Component Interconnect Express (“PCIe”)switches, in which case a switch interface 104 may comprise a switchcard configured to create a PCIe-compliant interface between itsassociated information handling system 102 and switches 110. In otherembodiments, a switch interface 104 may comprise an interposer. Use ofswitch interfaces 104 in information handling systems 102 may allow forminimal changes to be made to traditional servers (e.g., M classservers) while supporting the overall system architecture disclosedherein. Although FIG. 1 depicts an implementation including a singleswitch interface 104 per information handling system 102, in someembodiments each information handling system 102 may include a pluralityof switch interfaces 102 for redundancy, high availability, and/or otherreasons.

Mid-plane 106 may comprise any system, device, or apparatus configuredto interconnect modular information handling systems 102 withinformation handling resources. Accordingly, mid-plane 106 may includeslots and/or connectors configured to receive information handlingsystems 102, switches 110, chassis management controllers 112, storagecontrollers 114, network interface 116, optical media drive 132, KVMinterface 134, user interface 136, and/or other information handlingresources. In one embodiment, mid-plane 106 may include a single boardconfigured to interconnect modular information handling systems 102 withinformation handling resources. In another embodiment, mid-plane 106 mayinclude multiple boards configured to interconnect modular informationhandling systems 102 with information handling resources. In yet anotherembodiment, mid-plane 106 may include cabling configured to interconnectmodular information handling systems 102 with information handlingresources.

A switch 110 may comprise any system, device, or apparatus configured tocouple information handling systems 102 to storage controllers 114(e.g., via mid-plane 106) and slots 120 and perform switching betweeninformation handling systems 102 and various information handlingresources of system 100, including storage controllers 114 and slots120. In certain embodiments, a switch 110 may comprise a PCIe switch. Inother embodiments, a switch may comprise a generalized PC bus switch, anInfiniband switch, or other suitable switch. As shown in FIG. 1, chassis101 may include a plurality of switches 110. In such embodiments,switches 110 may operate in a redundant mode for shared devices (e.g.,storage controllers 114 and/or devices coupled to slots 120) and innon-redundant mode for non-shared/zoned devices. As used herein, shareddevices may refer to those which may be visible to more than oneinformation handling system 102, while non-shared devices may refer tothose which are visible to only a single information handling system102. In some embodiments, mid-plane 106 may include a single switch 110.

A chassis management controller 112 may be any system, device, orapparatus configured to facilitate management and/or control of system100, its information handling systems 102, and/or one or more of itscomponent its component information handling resources. A chassismanagement controller 102 may be configured to issue commands and/orother signals to manage and/or control information handling system 102and/or information handling resources of system 100. A chassismanagement controller 112 may comprise a microprocessor,microcontroller, DSP, ASIC, field programmable gate array (“FPGA”),EEPROM, or any combination thereof. As shown in FIG. 1, a chassismanagement controller 112 may be coupled to mid-plane 106. Also as shownin FIG. 1, system 100 may include a plurality of chassis managementcontrollers 112, and in such embodiments, chassis management controllers112 may be configured as redundant. In some embodiments, a chassismanagement controller 112 may provide a user interface and high levelcontrols for management of switches 110, including configuringassignments of individual information handling systems 102 to non-sharedinformation handling resources of system 100. In these and otherembodiments, a chassis management controller may define configurationsof the storage subsystem (e.g., storage controllers 114, storageinterfaces 126, disk drives 130, etc.) of system 100. For example, achassis management controller may provide physical functionconfiguration and status information that would normally occur at thedriver level in traditional server implementations. Examples of physicalfunctions include disk drive discovery and status, RAID configurationand logical volume mapping.

In addition or alternatively, a chassis management controller 112 mayalso provide a management console for user/administrator access to thesefunctions. For example, a chassis management controller 112 mayimplement Intelligent Platform Management Interface (“IPMI”) or anothersuitable management protocol permitting a user to remotely access achassis management controller 112 to configure system 100 and itsvarious information handling resources. In such embodiments, a chassismanagement controller 112 may interface with a network interfaceseparate from network interface 116, thus allowing for “out-of-band”control of 100, such that communications to and from chassis managementcontroller 112 are communicated via a management channel physicallyisolated from an “in band” communication channel with network interface116. Thus, for example, if a failure occurs in system 100 that preventsan administrator from interfacing with system 100 via network interface116 and/or user interface 136 (e.g., operating system failure, powerfailure, etc.), the administrator may still be able to monitor and/ormanage system 100 (e.g., to diagnose problems that may have causedfailure) via a chassis management controller 112. In the same oralternative embodiments, chassis management controller 112 may allow anadministrator to remotely manage one or parameters associated withoperation of system 100 and its various information handling resources(e.g., power usage, processor allocation, memory allocation, securityprivileges, etc.). Although FIG. 1 depicts chassis as having two chassismanagement controllers 112, chassis 101 may include any suitable numberchassis management controllers 112.

A storage controller 114 may and include any system, apparatus, ordevice operable to manage the communication of data between one or moreof information handling systems 102 and one or more of disk drives 130.In certain embodiments, a storage controller 114 may providefunctionality including, without limitation, disk aggregation andredundancy (e.g., RAID), input/output routing, and error detection andrecovery. As shown in FIG. 1, a storage controller 114 may coupled to aconnector on mid-plane 106. Also as shown in FIG. 1, system 100 mayinclude a plurality of storage controllers 114, and in such embodiments,storage controllers 114 may be configured as redundant. In addition orin the alternative, storage controllers 114 may in some embodiments beshared among two or more information handling systems 102. As also shownin FIG. 1, each storage controller 114 may be coupled to one or morestorage interfaces 126 via cables 124. For example, in some embodiments,each storage controller 114 may be coupled to a single associatedstorage interface 126 via a cable 124. In other embodiments, eachstorage controller 114 may be coupled to two or more storage interfaces126 via a plurality of cables 124, thus permitting redundancy as shownin FIG. 1. Storage controllers 114 may also have features supportingshared storage and high availability. For example, in PCIeimplementations, a unique PCIe identifier may be used to indicate sharedstorage capability and compatibility in system 100.

As depicted in FIG. 1, switch 110 may have coupled thereto one or moreslots 120. A slot 120 may include any system, device, or apparatusconfigured to allow addition of one or more expansion cards to chassis101 in order to electrically couple such expansion cards to a switch110. Such slots 120 may comprise any suitable combination of full-heightrisers, full-height slots, and low-profile slots. A full-height risermay include any system, device, or apparatus configured to allowaddition of one or more expansion cards (e.g., a full-height slot)having a physical profile or form factor with dimensions thatpractically prevent such expansion cards to be coupled in a particularmanner (e.g., perpendicularly) to mid-plane 106 and/or switch 110 (e.g.,the proximity of information handling resources in chassis 101 preventsphysical placement of an expansion card in such a manner). Accordingly,a full-height riser may itself physically couple with a low-profile tomid-plane 106, a switch 110, or other components, and full-height cardsmay then be coupled to full-height slots of a full-height riser. On theother hand, low-profile slots may be configured to couple low-profileexpansion cards to switches 110 without the need for a full-heightriser.

Slots 120 may also include electrically conductive elements (e.g., edgeconnectors, traces, etc.) allowing for expansion cards inserted intoslots 120 to be electrically coupled to switches 110. In operation,switches 110 may manage switching of communications between individualinformation handling systems 102 and expansion cards coupled to slots120. In some embodiments, slots 120 may be nonshared (e.g., each slot120 is associated with a single information handling system 102). Inother embodiments, one or more of slots 120 may be shared among two ormore information handling systems 102. In these and other embodiments,one or more slots 120 may be configured to be compatible with PCIe,generalized PC bus switch, Infiniband, or other suitable communicationspecification, standard, or protocol.

Network interface 116 may include any suitable system, apparatus, ordevice operable to serve as an interface between chassis 101 and anexternal network (e.g., a local area network or other network). Networkinterface 116 may enable information handling systems 102 to communicatewith the external network using any suitable transmission protocol(e.g., TCP/IP) and/or standard (e.g., IEEE 802.11, Wi-Fi). In certainembodiments, network interface 116 may include a network interface card(“NIC”). In the same or alternative embodiments, network interface 116may be configured to communicate via wireless transmissions. In the sameor alternative embodiments, network interface 116 may provide physicalaccess to a networking medium and/or provide a low-level addressingsystem (e.g., through the use of Media Access Control addresses). Insome embodiments, network interface 116 may be implemented as a localarea network (“LAN”) on motherboard (“LOM”) interface.

In some embodiments, various components of chassis 101 may be coupled toa planar. For example, a planar may interconnect switches 110, chassismanagement controller 112, storage controllers 114, network interface116, optical media drive 132, KVM interface 134, user interface 136,and/or other modular information handling resources of chassis 101 tomid-plane 106 of system 100. Accordingly, such planar may include slotsand/or connectors configured to interconnect with such informationhandling resources.

Storage interfaces 126 may include any system, device, or apparatusconfigured to facilitate communication between storage controllers 114and disk drives 130. For example, a storage interface may serve topermit a relatively small number of communication links (e.g., two)between storage controllers 114 and storage interfaces 126 tocommunicate with greater number (e.g., 25) disk drives 130. Thus, astorage interface 126 may provide a switching mechanism and/or diskdrive addressing mechanism that allows an information handling system102 to communicate with numerous disk drives 130 via a limited number ofcommunication links and/or channels. Accordingly, a storage interface126 may operate like an Ethernet hub or network switch that allowsmultiple systems to be coupled using a single switch port (or relativelyfew switch ports). A storage interface 126 may be implemented as anexpander (e.g., a Serial Attached SCSI (“SAS”) expander), an Ethernetswitch, a FibreChannel switch, Internet Small Computer System Interface(iSCSI) switch, or any other suitable switch. In order to support highavailability storage, system 100 may implement a plurality of redundantstorage interfaces 126, as shown in FIG. 1.

Disk drive backplane 128 may comprise any system, device, or apparatusconfigured to interconnect modular storage interfaces 126 with modulardisk drives 130. Accordingly, disk drive backplane 128 may include slotsand/or connectors configured to receive storage interfaces 126 and/ordisk drives 130. In some embodiments, system 100 may include two or morebackplanes, in order to support differently-sized disk drive formfactors. To support redundancy and high availability, a backplane 128may be configured to receive a plurality (e.g., 2) of storage interfaces126 which couple two storage controllers 114 to each disk drive 130.

Each disk drive 130 may include computer-readable media (e.g., magneticstorage media, optical storage media, opto-magnetic storage media,and/or other type of rotating storage media, flash memory, and/or othertype of solid state storage media) and may be generally operable tostore data and/or programs (e.g., one or more operating systems and/orone or more application programs). Although disk drives 130 are depictedas being internal to chassis 101 in FIG. 1, in some embodiments, one ormore disk drives may be located external to chassis 101 (e.g., in one ormore enclosures external to chassis 101).

Optical media drive 132 may be coupled to mid-plane 106 and may includeany suitable system, apparatus, or device configured to read data fromand/or write data to an optical storage medium (e.g., a compact disc,digital versatile disc, blue laser medium, and/or other optical medium).In certain embodiments, optical media drive 132 may use laser light orother electromagnetic energy to read and/or write data to an opticalstorage medium. In some embodiments, optical media drive 132 may benonshared and may be user-configurable such that optical media drive 132is associated with a single information handling system 102.

KVM interface 134 may be coupled to mid-plane 106 and may include anysuitable system, apparatus, or device configured to couple to one ormore of a keyboard, video display, and mouse and act as switch betweenmultiple information handling systems 102 and the keyboard, videodisplay, and/or mouse, thus allowing a user to interface with aplurality of information handling systems 102 via a single keyboard,video display, and/or mouse.

User interface 136 may include any system, apparatus, or device viawhich a user may interact with system 100 and its various informationhandling resources by facilitating input from a user allowing the userto manipulate system 100 and output to a user allowing system 100 toindicate effects of the user's manipulation. For example, user interface136 may include a display suitable for creating graphic images and/oralphanumeric characters recognizable to a user, and may include, forexample, a liquid crystal display, cathode ray tube, a plasma screen,and/or a digital light processor projection monitor. In certainembodiments, such a display may be an integral part of chassis 101 andreceive power from power supplies (not explicitly shown) of chassis 101,rather than being coupled to chassis 101 via a cable. In someembodiments, such display may comprise a touch screen device capable ofreceiving user input, wherein a touch sensor may be mechanically coupledor overlaid upon the display and may comprise any system, apparatus, ordevice suitable for detecting the presence and/or location of a tactiletouch, including, for example, a resistive sensor, capacitive sensor,surface acoustic wave sensor, projected capacitance sensor, infraredsensor, strain gauge sensor, optical imaging sensor, dispersive signaltechnology sensor, and/or acoustic pulse recognition sensor. In theseand other embodiments, user interface 136 may include other userinterface elements (e.g., a keypad, buttons, and/or switches placed inproximity to a display) allowing a user to provide input to system 100.User interface 136 may be coupled to chassis management controllers 112and/or other components of system 100, and thus may allow a user toconfigure various information handling resources of system 100 (e.g.,assign individual information handling systems 102 to particularinformation handling resources).

When a system (e.g., system 100) is architected so as to allowinformation handling information handling resources (e.g., PeripheralComponent Interconnect Express (“PCIe”) adapters coupled to slots 120)to be located in a chassis having shared resources such that theinformation handling resources may be assigned to one informationhandling system or shared among a plurality of information handlingresources, challenges may arise when needing to service an informationhandling resource.

Shared resources or devices, such as PCIe adapters coupled to slots 120,may be virtualized across multiple information handling systems 102.Non-shared resources or devices may be partitioned such that they arevisible only to a single information handling system 102 at time.Chassis management controller 112 may be configured to handle routingand switching through switches 110 to affect sharing or a resource tomultiple information handling systems 102 or to affect dedicatedassignment of a resource to a single information handling system 102.

FIG. 2 illustrates a more detailed block diagram of example system 100configured to conduct live migration of virtual machines in modularchassis 101 for information handling systems 102 in accordance withcertain embodiments of the present disclosure. In one embodiment, system100 may be configured to perform such live migration utilizing thesingle root IOV configuration of a NIC.

Chassis 101 may include a management processor 248 communicativelycoupled to switches 110. Management processor 248 may be any system,device, or apparatus configured to facilitate management and/or controlof switches 110. Management processor 248 may be configured to issuecommands and/or other signals to switches 110. Management processor 248may comprise a microprocessor, microcontroller, DSP, ASIC, EEPROM, orany combination thereof. In one embodiment, management processor 248 maybe coupled to chassis management controller 112. In another embodiment,management processor 248 may be implemented by or within the samesubsystem as chassis management controller 112.

Management processor 248 may include application-programming-interfaces(“APIs”) for supporting configuration of IOV in system 100 for sharingdevices connected to slots of chassis 101 to multiple informationhandling systems 102 and for mapping devices that are to be dedicated toa single information handling system 102. Such APIs may be executed on,for example, a Linux operating system running on management processor248. The APIs of management processor 248 may provide the interface tochassis management controller 112 for configuring IOV. Managementprocessor 248 may be configured to manage both switches 110.

Chassis 101 may include multiple information handling systems 102.Chassis 101 may include any suitable number of information handlingsystems 102. In one embodiment, information handling systems 102 may bereferred to as “blades”.

Each information handling system 102 may include cards 104, as describedin association with FIG. 1. Information handling systems 102 may includea basic input-output system 246 (“BIOS”) which may be implemented, forexample, on firmware for execution by the information handling system.Information handling system 102 may access BIOS upon, for example,start-up of information handling system 102 to initialize interoperationwith the rest of chassis 101.

The processor 103 of information handling system 102 may be coupled to amemory 204. In one embodiment, memory 204 may be resident on informationhandling system 102. In another embodiment, memory 204 may be sharedamong multiple information handling systems 102 and resident elsewhereon chassis 101. Applications, processes, and other software executing oninformation handling system 102 may be performed by instructionsresident in memory 204 for execution by processor 103. Memory 204 may beimplemented by non-transitory computer-readable media, such as RAM.

Switches 110 may contain PCIe cards instead of typical blade Ethernet,Fibre Channel or InfiniBand cards. Interfaces 104 of the informationhandling systems 102 may attach to switches 110 through the cards ofswitches 110. Switches 110 may connect information handling systems 102to slots 234. Slots 234 may include one or more of the slots 120 of FIG.1 in any suitable combination.

In one embodiment, each of information handling systems 102 may becommunicatively coupled to each of switches 110 through one ofinterfaces 104 resident on the information handling system 102. Forexample, information handling system 102 a may be communicativelycoupled to switch 110 a through interface 104 a and to switch 110 bthrough interface 104 b. Information handling system 102 b may becommunicatively coupled to switch 110 a through interface 104 c and toswitch 110 b through interface 104 d. Thus, each of switches 110 mayprovide its switching fabric to each of information handling systems 102in order to route the given information handling system 102 torespective slots 234 associated with the switch 110.

Slots 234 may be configured to connect to associated devices 236, thoughfewer devices may be present than the associated capacity of chassis101. Chassis 101 may include any suitable number of slots 234. In oneembodiment, devices 236 may include PCIe-based cards or devices. Eachsuch device 236 may represent an information handling resource to beselectively, for example, shared among multiple information handlingsystem 102 or dedicated to a single information handling system 102.Device 236 may comprise, for example, a RAID controller, network card,or other information handling resource. Furthermore, device 236 mayinclude a specific shared component such as a NIC 238.

In order to support IOV, the driver and firmware of device 236 mayinclude support for single root IOV. To maintain routes between giveninformation handling systems 102 and slots 234, switches 110 may includevirtual hierarchies from slots 234 to information handling systems 102.Particular functions, such as virtual functions or shared functions, forsingle root IOV for a given device 236 may be mapped in switch 110,providing behavior similar to multiple-root IOV. In one embodiment,wherein device 236 contains multiple information handling resources suchas a NIC and USB interface, a function may be provided for each suchinformation handling resource. Thus, from the perspective of informationhandling systems 102 the multiple such information handling resourcesmay appear to be separate and unrelated. A given slot 234 or device 236which has been virtualized may be accessed by two or more virtualfunctions, which allow the sharing of the resource. Physical functions,as opposed to the above-described virtual functions or shared functions,may be mapped or stored in management processor 248. A physical functionrepresenting an information handling resource may be provided to asingle information handling system 102. In cases where a device 236contains multiple information handling resources, individual physicalfunctions may be provided for each such resource. Multiple instances ofa virtual function may be provided to multiple information handlingsystems 102. If, for example, multiple information handling systems 102are sharing a device 236, then access to device 236 may be divided intomultiple virtual NICs using virtual functions, each of which are mappedby switches 110 to the respective information handling system 102.Furthermore, specific APIs for accessing a given device 236 may bemapped or stored in management processor 248. Chassis managementcontroller 112 may be configured to access these physical functions orAPIs in management processor 248.

Chassis management controller 112 and/or management processor 248 may beconfigured to route, switch, control, or otherwise direct othercomponents of chassis 101 to route, switch, or control informationbetween devices 236 and information handling systems 102. Such routingmay be used to provide live migration of a virtual machine between, forexample, information handling system 102 a and information handlingsystem 102 b. Any suitable method of live migration may be used. Thetransfer of operational statuses such as execution point, memorycontents, operating system state, etc., may be conducted through thevirtualized access of information handling resources such as NIC 238 a.

In operation, a single root IOV information handling resource such asNIC 238 a may be communicatively coupled to multiple informationhandling systems, such as information handling system 102 a andinformation handling system 102 b.

Using virtual bridges, each of information handling system 102 a andinformation handling system 102 b may appear as possible networkdestinations from each other, despite being connected to the same NIC.The virtual bridges route traffic between information handling system102 a and information handling system 102 b that, to the informationhandling systems 102, may appear to be normal network traffic, such asEthernet traffic using Transmission Control Protocol/Internet Protocol(“TCP/IP”). However, the traffic might not be issued to transportequipment and instead routed to the other information handling system102, which may view the received information as received using normalnetwork transport mechanisms such as described above. The connectionbetween information handling systems 102 may be performed throughmid-plane 106 as facilitated by switches 110. In one embodiment, noadditional network connections external to chassis 101 may be necessaryto provide such connectivity. In another embodiment, network connectionsexternal to chassis 101 may be used to force device drivers, such aslegacy drivers for applications and operating systems that assumededication of information handling resources such as NIC 238, to detectlinks or traffic on NIC 238 and may cause NIC 238 to function as anetwork switch.

Using the connection over midplane 106, a virtual machine may betransferred between information handling system 102 a and informationhandling system 102 b while preserving the execution state of thevirtual machine. Such a transfer may be conducted using the connectionover midplane 106 while such a connection is transparent to the entityconducting the migration. Consequently, the entity conducting themigration may perform migration with assumptions concerning networktransport in place.

In one embodiment, the entity conducting the migration may reside on thesource information handling system 102. In another embodiment, theentity conducting the migration may reside on an information handlingsystem 102 that is a third party to the source and destinationinformation handling systems. In yet another embodiment, the entityconducting the migration may reside on other portions of chassis 101,such as chassis management controller 112 or a module communicativelycoupled thereto. In still yet another embodiment, the entity conductingthe migration may reside on an information handling system separate fromchassis 101 and communicatively coupled to chassis 101 over a network.

FIG. 3 illustrates a more detailed block diagram of mechanisms toconnect a single-root IOV NIC to simulate local-area-network (“LAN”)activity in accordance with certain embodiments of the presentdisclosure. Such simulation may cause drivers to detect links or trafficon the NIC and cause it to function as a network switch, as describedabove. The single-root IOV NIC may include, for example, NIC 238.

NIC 238 may include a plurality of ports, such as ports 304, 306, 308,310, 312, 314. Any suitable number of ports may be included within NIC238. Although six ports are illustrated in the example of FIG. 3, such anumber of ports are merely shown for illustrative purposes. In oneembodiment, NIC 238 may include four physical ports. Ports 304, 306,308, 310, 312, 314 may be bi-directional, though for the purposes ofillustration in FIG. 3 the ports are shown in uni-directional operation.

In one embodiment, NIC 238 may be connected to a switch 302 external tochassis 101. Switch 302 may include any suitable network switch. NIC 238may be connected to the switch using ports 304, 306. In a furtherembodiment, although switch 302 is communicatively coupled to NIC 238,live migration of a virtual machine from information handling system 102a to information handling system 102 b may be conducted withouttransmitting any of the virtual machine state information through switch302. In such a case, the connection of ports 304, 306 to switch 302 maycause drivers and applications for conducting the live migration tobelieve that a connection is available. Nevertheless, traffic related totransmitting the virtual machine state information may be switchedbetween information handling system 102 a and information handlingsystem 102 b internal to chassis 101. Such traffic may be switched, forexample, by switches 110 on midplane 106.

In another embodiment, NIC 238 may be connected to itself using aloopback, crossover, or other mechanism such as loopback 316 a. Loopback316 a may be external to chassis 101. Loopback 316 a may be connected tothe switch using ports 308, 310. The live migration of a virtual machinefrom information handling system 102 a to information handling system102 b may be conducted without transmitting any of the virtual machinestate information through loopback 316. In such a case, the connectionof ports 308, 310 to loopback 316 may cause drivers and application forconducting the live migration to believe that a connection is available.Nevertheless, traffic related to transmitting the virtual machine stateinformation may be switched between information handling system 102 aand information handling system 102 b internal to chassis 101. Thetraffic may not reach the ports of NIC 238. Such traffic may beswitched, for example, by switches 110 on midplane 106.

In yet another embodiment, NIC 238 may be connected to itself using aloopback, crossover, or other mechanism internal to NIC 238. Such aloopback may be connected using ports 312, 314. In a further embodiment,ports 312, 314 may be hard-wired to each other. In another furtherembodiment, ports 312, 314 may not be externally available. The livemigration of a virtual machine from information handling system 102 a toinformation handling system 102 b may be conducted without transmittingany of the virtual machine state information through the connectionbetween ports 312, 314. In such a case, the connection of ports 312, 314in loopback configuration may cause drivers and applications forconducting the live migration to believe that a connection is available.Nevertheless, traffic related to transmitting the virtual machine stateinformation may be switched between information handling system 102 aand information handling system 102 b internal to chassis 101. Thetraffic may not reach the ports of NIC 238, including ports 312, 314.Such traffic may be switched, for example, by switches 110 on midplane106.

In still yet another embodiment, NIC 238 may be configured, throughdriver software, for example, to ignore the status of its ports whendetermining whether NIC 238 is connected to a destination. Thus, driversoftware for applications of information handling system 102 a may bebound to particular to network ports of NIC 238 despite the actualconnection status of such ports. A connection may be simulated to avirtualization environment on information handling system 102 a.

The live migration of a virtual machine from information handling system102 a to information handling system 102 b may be conducted withouttransmitting any of the virtual machine state information through theconnection between the ports of NIC 238. In such a case, such a statusmay cause other drivers and applications for conducting the livemigration to believe that a connection is available from NIC 238, whensuch an external connection may or may not be available. Nevertheless,traffic related to transmitting the virtual machine state informationmay be switched between information handling system 102 a andinformation handling system 102 b internal to chassis 101. The trafficmay not reach the ports of NIC 238. Such traffic may be switched, forexample, by switches 110 on midplane 106.

FIG. 4 illustrates a more detailed block diagram of virtual hierarchiesprovided by chassis 101 that may be used to provide live migration ofvirtual machines in accordance with certain embodiments of the presentdisclosure. Such virtual hierarchies may represent routing of signals byswitches 110 between information handling systems 102 and betweeninformation handling systems 102 and information handling resources suchas NIC 238 a.

The virtual hierarchies may include one or more virtual bridges 410 forrouting, transmitting, or otherwise facilitating network traffic onchassis 101. Such a virtual bridge 410 may be resident within, forexample, NIC 238 a. Virtual bridge 410 may include an embedded virtualbridge.

Virtual bridges 410 may be configured to provide the appearance ofnetwork entities for routing information configured as, for example,TCP/IP traffic, while forgoing the use of network transmissionequipment.

Furthermore, the virtual hierarchies may include mappings of informationhandling resources such as NIC 238 a to one or more information handlingsystems 102. Each information handling resource of a given device mayinclude a set of functions. Such a set of functions may include aphysical function, for which actual physical control may be provided,and one or more virtual functions, for which shared access may beprovided.

For example, NIC 238 a may be configured to be shared among multipleinformation handling systems, and consequently may include physicalfunctions PF_NIC_(—)1 406, PF_NIC_(—)2 408 and virtual functionsVF_NIC_(—)1 402, VF_NIC_(—)2 404.

In the example of FIG. 4, NIC 238 a may include virtual bridge 410,which may route VF_NIC_(—)1 402 to VF_NIC_(—)2 404 and vice versa. Sucha routing may be handled in any suitable manner, such as the mechanismsillustrated in FIG. 3. In one embodiment, such a routing may be handledinternally to virtual bridge 410. In another embodiment, such a routingmay be made by routing VF_NIC_(—)1 402 and VF_NIC_(—)2 404 to suitableports of NIC 238 a, such as ports 304, 306, respectively. Ports 304, 306may be connected using a crossover connection or an external switch.

In operation, the physical operation of NIC 238 a may be routed tochassis management controller 112, which may in turn establish thevirtual function mappings shown in FIG. 4. Information handling system102 a may utilize NIC 238 a by use of virtual functions VF_NIC_(—)1 402,VF_NIC_(—)2 404. Furthermore, information handling system 102 a andinformation handling system 102 b may communicate by identifying eachother through use of virtual bridge 410 sending network traffic betweenthe functions of virtual bridge 410.

Traffic from information handling system 102 a may be received byVF_NIC_(—)1 402 and routed using virtual bridge 410 to VF_NIC_(—)2 404and on to information handling system 102 b. The routing of traffic maybe handled by, for example, internal routing of data in virtual bridge410 or by external routing to ports 304, 306. Such routing may appearseamless to applications and functions on each of information handlingsystem 102 a and information handling system 102 b, which may eachperceive a unique NIC through which traffic is being conducted throughvirtual functions VF_NIC_(—)1 402, VF_NIC_(—)2 404.

FIG. 5 illustrates a block diagram of example virtual machine operationin accordance with certain embodiments of the present disclosure.Although example virtual machine operation is illustrated in FIG. 5, anysuitable virtual machine may be migrated using chassis 101.

A virtualization environment 502 may provide virtualized access for oneor more applications such as App1 510, App2 512, and App3 514 toinformation handling resources 516. Information handling resources 516may include the resources, such as processors, storage, or memory, ofone or more information handling systems, such as information handlingsystems 102. Applications 510, 512, 514 may include drivers, scripts,executable, user programs provided remotely, on a cloud, or a service,or any other suitable component for execution on a computer.Applications 510, 512, 514 may each perceive resources available to theapplication. However, attempts to access the resources may beintercepted by virtualization environment 502, which may handle theactual access of resources. The resources actually accessed may includeinformation handling resources 516. Information handling resources 516might thus not be visible to applications 510, 512, 514. Instead, onlyvirtualized views or versions of information handling resources 516 maybe visible to applications 510, 512, 514.

Virtualization environment 502 may include any suitable number and kindof components to provide virtualized access for applications 510, 512,514 to information handling resources 516. For example, virtualizationenvironment 502 may include a hypervisor 504, configured to coordinatethe virtualization and allocation of resources to various applications510, 512, 514. Hypervisor 504 may include any module, library,application, or other entity configured to manager virtual machines orenvironments, such as virtual memory manager or VCENTER. Further,virtualization environment 502 may include multiple executionenvironments such as virtual machines 508, 510. Each such virtualmachine 508, 510 may include a self-contained execution environment fora set of applications. For example, virtual machine 508 may provide anexecution environment for App1 510 and App2 512. In another example,virtual machine 506 may provide an execution environment for App4 514.The elements executing within virtual machine 506 may not be visible tothe elements executing within virtual machine 508, and vice-versa. Eachsuch virtual machine may include a guest operating system 518, 520,configured to provide a mechanism expected by applications 510, 512, 514for accessing information handling resources 516.

In operation, virtualized environment 502 may be executing on aninformation handling system 102, elsewhere on chassis 101, or on anotherinformation handling system 102 communicatively coupled with chassis101. Applications 510, 512, 514 may be operating on an informationhandling system 102. Applications 510, 512, 514 may be accessingresources of the information handling system 102 such as memory 204 orprocessor 103. Such access may be virtualized by virtualized environment502.

Virtualized environment 502 may change the specific resources ofinformation handling resources 516 that are provided to a given virtualmachine 506, 508. Such a change may be responsive to, for example, amanagement setting or command, a change in demand for resources or inresource availability, prioritization, or other asset management logic.For example, execution of virtual machine 506 may be moved frominformation handling system 102 a to information handling system 102 b.Chassis 101 may provide migration of the virtual machine 506 frominformation handling system 102 a to information handling system 102 b.Such a migration may include the preservation of the operation state ofvirtual machine 506 such that errors in the execution of App1 510 andApp2 512 are avoided.

FIG. 6 illustrates a block diagram of example live migration inaccordance with certain embodiments of the present disclosure. A virtualmachine 602, which may implement, for example, virtual machine 506 ofFIG. 5, may have been using the resources of information handling system102 a. Hypervisor 504 may preserve the operational state of virtualmachine 602 and transfer its execution to the information handlingresources of information handling system 102 b.

FIG. 7 illustrates a block diagram of a more detailed example of theoperation of live migration in accordance with certain embodiments ofthe present disclosure. Information handling system 102 a andinformation handling system 102 b may be communicatively coupled to eachother using the process described above in conjunction with FIGS. 3 and4. Information handling system 102 a may access NIC 238 usingVF_NIC_(—)1 402 and bridge 410 b. Information handling system 102 a mayaccess NIC 238 using VF_NIC_(—)2 404 and bridge 410 e. Bridges 410 b and410 e may be connected using bridge 410 d. A loopback, crossover,external switch connection, or other similar configuration as describedin FIG. 3 may be implemented with ports 706, 708. Consequently, driversand applications relying upon the operation of NIC 238, such as thosewithin hypervisor 504, may be configured to transmit informationcorrectly.

In operation, hypervisor 504 may move the operation of virtual machine602 from the resources of information handling system 102 a to theresources of information handling system 102 b. Hypervisor 504 may copyor move large amounts of data reflective of the operational state ofvirtual machine 602 and all of its components. To copy or move suchlarge amounts of data, the data may be sent through bridge 410 b, tobridge 410 d, and to bridge 410 e before be reconstructed and configuredto use the resources of information handling system 102 b. In oneembodiment, hypervisor 504 may reconstruct itself as hypervisor' 704. Inanother embodiment, hypervisor 504 may remain resident in its originalplace of operation. Hypervisor 504 may reconstruct virtual machine 602as hypervisor' 702. The information transmitted to reconstruct virtualmachine 602 may be passed through switches 110 and mid-plane 106. In oneembodiment, the information transmitted may remain internal to chassis101 without leaving chassis 101. In another embodiment, the informationtransmitted may be passed through bridges 410 without reaching NIC 238a.

FIG. 8 illustrates a flow chart of an example method 800 for livemigration of virtual machines using virtual bridges in a multi-rootinput-output virtualization blade chassis. According to certainembodiments, method 800 may begin at step 805. As noted above, teachingsof the present disclosure may be implemented in a variety ofconfigurations of system 100 as shown in FIGS. 1-7. As such, thepreferred initialization point for method 800 and the order of the stepscomprising method 800 may depend on the implementation chosen.

Method 800 may begin in response to any suitable stimulus or trigger.For example, method 800 may be invoked in response to an assetmanagement decision, command, configuration, or setting. In anotherexample, method 800 may be invoked after a change in utilization,demand, or other criteria regarding information handling resources. Inthese and other embodiments, method 800 may be implemented as firmware,software, applications, functions, libraries, or other instructionscontinually monitoring chassis 101 for such powering on. In a furtherembodiment, method 800 may be implemented fully or partially by suchinstructions within chassis management controller 112.

In step 805, an information handling resource may be connected tochassis 101 for access by two or more information handling systems. Inone embodiment, such a resource may include a resource configured forsingle-root IOV. In another embodiment, such a resource may include aNIC.

In step 810, access to the resource may be virtualized. Virtualfunctions for each information handling system to share the resource maybe issued. Each such information handling system may access the resourceusing the respective virtual function. In step 815, virtual bridges maybe established for connecting information handling systems and theresource. A bridge may be created for accessing the resource.Furthermore, a bridge may be created at each of the information handlingsystems. The bridges may be configured to route information between eachother.

In step 820, LAN activity may be simulated. Such a simulation may beaccomplished by, for example, creating a loopback or crossover betweentwo ports of the NIC, or by connecting the NIC to an external switch.

In step 825, the operational state of a virtual machine may be copiedfrom the resources of one information handling system to the resourcesof another information handling system. The copied resources may betransmitted by the bridges created in step 815. In one embodiment, suchinformation may not reach the NIC. In another embodiment, suchinformation may not travel outside chassis 101. Any suitable order ornumber of steps may be taken to copy the operational state of thevirtual machine with regards to the various aspects of the virtualmachine.

In step 830, the newly copied or created virtual machine may beactivated. The operation of the virtual machine may continue at anexecution point at which operation halted before the virtual machine wascopied. In step 835, the previous virtual machine may be terminated.After step 835, method 800 may terminate or optionally repeat.

Although FIG. 8 discloses a particular number of steps to be taken withrespect to method 800, it may be executed with greater or lesser stepsthan those depicted in FIG. 8. In addition, although FIG. 8 discloses acertain order of steps to be taken with respect to method 800, the stepscomprising method 800 may be completed in any suitable order.

Method 800 may be implemented using system 100, components thereof orany other system such as those shown in FIGS. 1-7 operable to implementmethod 800. In certain embodiments, method 800 may be implementedpartially or fully in software and/or firmware embodied incomputer-readable media.

Although the present disclosure has been described in detail, it shouldbe understood that various changes, substitutions, and alterations canbe made hereto without departing from the spirit and the scope of thedisclosure as defined by the appended claims.

What is claimed is:
 1. A system comprising: a chassis configured toreceive a first information handling system, a second informationhandling system, and a plurality of information handling resourcesincluding a network information handling resource, each informationhandling resource received through a slot in the chassis; one or moreswitches configured to virtualize access of the network informationhandling resource to the first information handling system and thesecond information handling system, wherein the first informationhandling system and the second information handling system share thenetwork information handling resource using the virtualized access; afirst virtual bridge associated with the network information handlingresource; a virtual machine configured to access the resources of thefirst information handling system; and a virtualization environmentconfigured to migrate the virtual machine from the first informationhandling system to the second information handling system using thefirst virtual bridge.
 2. The system of claim 1, further comprising aconnection between two ports of the network information handlingresource, the connection configured to simulate local-area-networkactivity visible to the virtualization environment.
 3. The system ofclaim 2, wherein traffic resulting from the migration of the virtualmachine is isolated from the connection.
 4. The system of claim 2,wherein the connection is internal to the network information handlingresource.
 5. The system of claim 1, wherein the network informationhandling resource is configured to bind a driver to one or more ports,indicating availability to the virtualization environment regardless ofan actual connection status.
 6. The system of claim 1, furthercomprising a switch connected to the network information handlingresource, the switch configured to simulate local-area-network activityvisible to the virtualization environment.
 7. The system of claim 6,wherein traffic resulting from the migration of the virtual machine isisolated from the switch.
 8. The system of claim 1, further comprising:a first virtual function mapping the network information handlingresource and the first information handling system; a second virtualfunction mapping the network information handling resource and thesecond information handling resource; and, a physical function mappingthe network information handling resource and a chassis managementcontroller; wherein the first information handling system and the secondinformation handling system are configured to communicate using thefirst virtual function, the second virtual function, and the firstvirtual bridge.
 9. The system of claim 1, further comprising: a secondvirtual bridge associated with the first information handling system;and a third virtual bridge associated with the second informationhandling system; wherein the first information handling system isconfigured to communicate with the second information handling systemthrough the second virtual bridge and the third virtual bridge.
 10. Amethod for managing migration of a virtual machine, comprising:accessing a first information handling system and a second informationhandling system; accessing a network information handling resource;using one or more switches, virtualizing access of the networkinformation handling resource to the first information handling systemand the second information handling system, wherein the firstinformation handling system and the second information handling systemshare the network information handling resource using the virtualizedaccess; accessing a first virtual bridge associated with the networkinformation handling resource; accessing a virtual machine configured toaccess the resources of the first information handling system; andcopying the operational state of the virtual machine from the firstinformation handling system to the second information handling systemusing the first virtual bridge.
 11. The method of claim 10, furthercomprising establishing a connection between two ports of the networkinformation handling resource, the connection configured to simulatelocal-area-network activity visible to the virtualization environment.12. The method of claim 11, further comprising isolating trafficresulting from the migration of the virtual machine from the connection.13. The method of claim 11, wherein the connection is internal to thenetwork information handling resource.
 14. The method of claim 10,wherein the network information handling resource is configured to binda driver to one or more ports, indicating availability to thevirtualization environment regardless of an actual connection status.15. The method of claim 10, further comprising establishing a connectionwith a switch connected to the network information handling resource,the switch connection configured to simulate local-area-network activityvisible to the virtualization environment.
 16. The method of claim 15,further comprising isolating traffic resulting from the migration of thevirtual machine from the switch.
 17. The method of claim 10, furthercomprising: mapping a first virtual function mapping between the networkinformation handling resource and the first information handling system;mapping a second virtual function between the network informationhandling resource and the second information handling resource; mappinga physical function between the network information handling resourceand a chassis management controller; and communicating between the firstinformation handling system and the second information handling systemusing the first virtual function, the second virtual function, and thefirst virtual bridge.
 18. The method of claim 10, further comprising:accessing a second virtual bridge associated with the first informationhandling system; accessing a third virtual bridge associated with thesecond information handling system; and communicating between the firstinformation handling system and the second information handling systemthrough the second virtual bridge and the third virtual bridge.
 19. Anarticle of manufacture comprising: a computer readable medium; andcomputer-executable instructions carried on the computer readablemedium, the instructions readable by a processor, the instructions, whenread and executed, for causing the processor to: access a firstinformation handling system and a second information handling system;access a network information handling resource; using one or moreswitches, virtualize access of the network information handling resourceto the first information handling system and the second informationhandling system, wherein the first information handling system and thesecond information handling system share the network informationhandling resource using the virtualized access; access a first virtualbridge associated with the network information handling resource; accessa virtual machine configured to access the resources of the firstinformation handling system; and copy the operational state of thevirtual machine from the first information handling system to the secondinformation handling system using the first virtual bridge.
 20. Thearticle of claim 19, wherein the processor is further caused toestablish a connection between two ports of the network informationhandling resource, the connection configured to simulatelocal-area-network activity visible to the virtualization environment.21. The article of claim 20, wherein the processor is further caused toisolate traffic resulting from the migration of the virtual machine fromthe connection.
 22. The article of claim 20, wherein the connection isinternal to the network information handling resource.
 23. The articleof claim 19, wherein the network information handling resource isconfigured to bind a driver to one or more ports, indicatingavailability to the virtualization environment regardless of an actualconnection status.
 24. The article of claim 19, wherein the processor isfurther caused to establish a connection with a switch connected to thenetwork information handling resource, the switch connection configuredto simulate local-area-network activity visible to the virtualizationenvironment.
 25. The article of claim 19, wherein the processor isfurther caused to: map a first virtual function mapping between thenetwork information handling resource and the first information handlingsystem; map a second virtual function between the network informationhandling resource and the second information handling resource; map aphysical function between the network information handling resource anda chassis management controller; and communicate between the firstinformation handling system and the second information handling systemusing the first virtual function, the second virtual function, and thefirst virtual bridge.
 26. The article of claim 19, wherein the processoris further caused to: access a second virtual bridge associated with thefirst information handling system; access a third virtual bridgeassociated with the second information handling system; and communicatebetween the first information handling system and the second informationhandling system through the second virtual bridge and the third virtualbridge.